package com.mk.cloud.common.interceptor.header;

import act.app.ActionContext;
import com.mk.cloud.Application;
import com.mk.cloud.common.domain.CpCusResource;
import com.mk.cloud.common.domain.PUser;
import com.mk.cloud.common.enums.ErrorCode;
import com.mk.cloud.common.enums.GlobalValues;
import org.osgl.http.H;
import org.osgl.mvc.annotation.Before;
import org.osgl.mvc.result.Result;

import java.util.Map;

/**
 * session机制
 * 登录、权限、菜单验证
 */
@SuppressWarnings("unused")
public class IHLogin extends HeaderService {
    @Before
    public Result check(ActionContext context, H.Session session) {
        if (me == null) {
            return renderJson(ErrorCode.E201003.map());
        }
        return null;

//        return renderJson(new PUser());
//        //是否登录
//        if (!context.isLoggedIn()) {
//            if (context.isAjax()) return renderJson(ErrorCode.E201003.map());
//            return redirect(GlobalValues.LOGIN_URL.value());
//        }
//
//        CpCusResource urls = session.cached("urls");
//        if (context.isLoggedIn() && (me == null || urls == null)) {
//            context.logout();
//            if (context.isAjax()) return renderJson(ErrorCode.E201003.map());
//            else return redirect(GlobalValues.LOGIN_URL.value()+"?e=" + ErrorCode.E201003.status());
//        }
//
//        session.cache("user", me, Application.CACHE_TIME);
//        session.cache("urls", urls, Application.CACHE_TIME);
//
//        String path = context.req().url();
//        Map<String, String> urls_ = session.cached("urls", CpCusResource.class).getUrl();
//        if (urls_.containsKey(path)) {
//            String[] id = urls_.get(path).split("-");
//            session.cache("id_1", id.length > 0 ? id[0] : "");
//            session.cache("id_2", id.length > 1 ? id[1] : "");
//            session.cache("id_3", id.length > 2 ? id[2] : "");
//        }
//        return null;
    }
}
